Nội dung thuật toán Thuật toán Bellman–Ford

function BellmanFord(danh_sách_đỉnh, danh_sách_cung, nguồn)    // hàm yêu cầu đồ thị đưa vào dưới dạng một danh sách đỉnh, một danh sách cung    // hàm tính các giá trị khoảng_cách và đỉnh_liền_trước của các đỉnh,     // sao cho các giá trị đỉnh_liền_trước sẽ lưu lại các đường đi ngắn nhất.     // bước 1: khởi tạo đồ thị    for each v in danh_sách_đỉnh:        if v is nguồn then khoảng_cách(v):= 0        else khoảng_cách(v):= vô cùng        đỉnh_liền_trước(v):= null        // bước 2: kết nạp cạnh    for i from 1 to size(danh_sách_đỉnh)-1:               for each (u,v) in danh_sách_cung:            if khoảng_cách(v) > khoảng_cách(u) + trọng_số(u,v):                khoảng_cách(v):= khoảng_cách(u) + trọng_số(u,v)                đỉnh_liền_trước(v):= u     // bước 3: kiểm tra chu trình âm    for each (u,v) in danh_sách_cung:        if khoảng_cách(v) > khoảng_cách(u) + trọng_số(u,v):            error "Đồ thị chứa chu trình âm"